crypto

您所在的位置:网站首页 crypto加密 node crypto

crypto

2024-07-05 17:24| 来源: 网络整理| 查看: 265

DES概述

DES全称为Data Encryption Standard,即数据加密标准,是一种使用密钥加密的块算法,1977年被美国联邦政府的国家标准局确定为联邦资料处理标准(FIPS),并授权在非密级政府通信中使用,随后该算法在国际上广泛流传开来。需要注意的是,在某些文献中,作为算法的DES称为数据加密算法(Data Encryption Algorithm,DEA),已与作为标准的DES区分开来。

DES 这种古老的算法还是作为简单的加密算法在被使用,因为它已经是可以破解的,所以对于安全性有较高要求的应用场景基本还是使用的RSA

vue DES使用crypto-js

vue 加密相关的库使用最多的就是crypto-js crypto-js 是一个纯 javascript 写的加密算法类库 ,可以非常方便地在 javascript 进行 MD5、SHA1、SHA2、SHA3、RIPEMD-160 哈希散列,进行 AES、DES、Rabbit、RC4、Triple DES 加解密。

官网描述

https://cryptojs.gitbook.io/docs/ 在这里插入图片描述 DES这段是讲: DES是以前用于加密的主要算法,并已作为正式的联邦信息处理标准(FIPS)发布。由于密钥太小,现在认为DES是不安全的。 3DES是对每块应用DES三次,以增加秘钥大小。该算法现在被认为是安全的。 所以用的话标准就直接使用3DES就可以了,基本就认为不会被破解了。

我们可以看到官网直接就把AES和DES(Triple DES)放一起了,因为用法除了把AES和DES这个名称换一下,其他的没有什么区别。

//加密 Message 待加密信息,Secret Passphrase 秘钥 var encrypted = CryptoJS.DES.encrypt("Message", "Secret Passphrase"); ​//解密 encrypted 待解密信息,Secret Passphrase 秘钥 var decrypted = CryptoJS.DES.decrypt(encrypted, "Secret Passphrase");

还有其他的MD5 SHA就不展开了。

客户秘钥和初始向量

在这里插入图片描述

Custom Key 客户秘钥

DES的秘钥对于我们来说就是字母数字或者字符的组合,可以直接约定秘钥或者随机生成就可以了。

可以随机从 A-Z a-z 0-9 符号:!@#$%^&*中取指定数量字符

//随机生成指定位数的key export function generatekey(num) { let library = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!@#$%^&*"; let key = ""; for (var i = 0; i


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3